The goal of any communication system is the error free transmission of the communicated signal whether it be an analog signal, a coded analog signal, or coded data. Communication systems adapted for transmission of coded information (voice and/or data) generally include some form of error correction. Error correction in these systems frequently takes the form of error detection and correction software. That is, software adapted to detect errors in the coded information and based upon a set of correction parameters replace the errors with an estimation of the correct coded information. These and other types of error correction mechanisms typically rely on prediction, interpolation and other similar techniques which generate an estimation of the corrupted coded information from preceding and succeeding bits of coded information.
Many modern communication systems incorporate a wireless, or air interface, for transmitting coded information from a base station to a mobile station. In these types of communication systems bursty errors, due, for example, to fading, interference or other disruptions to the coded information as it is transmitted over the air interface, may cause errors in blocks of bits. Errors in blocks of bits are difficult to correct using error correcting code because of the lack of surrounding information from which to estimate the correct information.
A solution is to provide as much diversity in the air interface as possible to achieve acceptable levels of communication quality in terms of data error rate. A common technique for introducing diversity into the air interface is interleaving the bits of coded information over many transmitted frames. Interleaving, in addition to error correction, works very well especially where fading is experienced by scattering the errors that would otherwise wipe out an entire frame of coded information among many frames.
There are two common methods of interleaving. The first is so-called block interleaving wherein the symbols (bits of coded information) of an RF transmit frame are read into a matrix one way and read out for transmission in a different way. For example, the data is read into the matrix by rows and read out of the matrix by columns. The next frame is then read into the matrix and the process repeated. This is the method according to the IS-95 standard where the 456 symbols of a 20 millisecond (ms) frame are interleaved prior to transmission.
A second method is so-called diagonal interleaving wherein groups of bits are spread over the entire interleave depth in a staggered way. Interleave depth refers to the number of frames of coded information over which all of the symbols of a single frame are spread for transmission. Likewise interleave depth refers to the number of frames of transmitted information which need to be recovered in order to properly decode a single frame of information. In diagonal interleave, the symbols are read into a staggered matrix, with each succeeding row/column incrementing one column/row, respectively, as the case may be. This is the GSM method of interleaving where a frame is spread over 4.5 frames after interleaving.
With any type of interleaving, longer interleave depth benefits error protection by spreading bit errors over a large number of frames thereby decreasing noise correlation and increasing sensitivity. However, longer interleave depth requires longer data recovery times since a larger number of frames have to be recovered to decode a single frame of data. With short messages, such as messages in a packet data network which are often less than a single frame in length, long interleave depth is an inefficient process. In GSM, for example, a packet date message occupying a fraction of a data frame could require 4.5 frames worth of transmission time. In certain applications, interleave depth is limited by the amount of transmission delay which can be tolerated. For example, in the transmission of coded voice information the maximum practical delay is approximately 20 ms.
U.S. Pat. No. 4,901,319 to Ross teaches a method of interleaving in which the interleave depth is adapted based upon a fading characteristic of the radio channel. In this regard, fading characteristics of the channel are measured, and an interleave depth having the minimum time span necessary to provide good error correction in view of the fading characteristic is employed. The disadvantage of Ross, however, is that the length of the information being interleaved is not considered in selecting interleave depth. Hence, with very short messages, once again such a packet data, the interleave depth may be unnecessarily long.
Thus there remains a need for a data transmission system and method which efficiently transmits short messages yet takes advantage of the increased sensitivity of long interleave depths for long messages.